#include "tools.h"

/////////////////////////////////////////////////////HidDfu升级/////////////////////////////////////////////////////
//请在灯闪烁的时候按一下按键
void CheckUpdataAction(void)
{
    FLASH_OBProgramInitTypeDef obData;
    if(key1_check() == KEY_DOWN)
    {
        char i = 40;
        HAL_FLASH_Unlock();
        HAL_FLASH_OB_Unlock();
        HAL_FLASHEx_OBGetConfig(&obData);
        HAL_FLASHEx_OBErase();
        obData.DATAAddress = OB_DATA_ADDRESS_DATA0;
        obData.DATAData = 0xFF;
        obData.OptionType = OPTIONBYTE_DATA;
        HAL_FLASHEx_OBProgram(&obData);
        HAL_FLASH_OB_Lock();
        HAL_FLASH_Lock();
        while(i--)
        {
            led_invert;
            HAL_Delay(100);
        }
    }
}


/////////////////////////////////////////////////////简单按键/////////////////////////////////////////////////////
uint8_t key0_check( void )
{
    if(PCin(1) == 0)
    {
        return KEY_DOWN;
    }
    return KEY_UP;
}

uint8_t key1_check( void )
{
    if(PCin(13) == 0)
    {
        return KEY_DOWN;
    }
    return KEY_UP;
}

uint8_t key_wakeup_check( void )
{
    if(PAin(0) == 0)
    {
        return KEY_DOWN;
    }
    return KEY_UP;
}

/////////////////////////////////////////////////////工具函数/////////////////////////////////////////////////////

void delay_us(uint32_t n)
{
    n *= 11;
    while(n--);
}

